﻿using CTP.CRM.Core.Common.Enums;

namespace CTP.CRM.Repository.Employee.Entitys
{

    ///<summary>
    /// 员工信息表
    ///</summary>
    [SugarTable("t_employee")]
    public class EmployeeEntity : IFullAuditedBasicEntitys
    {
        ///<summary>
        ///
        ///</summary>
        [SugarColumn(ColumnName = "Id", IsPrimaryKey = true, IsIdentity = true)]
        public int Id { get; set; }

        ///<summary>
        /// 姓名
        ///</summary>
        [SugarColumn(ColumnName = "Name")]
        public string Name { get; set; }

        ///<summary>
        /// 英文名
        ///</summary>
        [SugarColumn(ColumnName = "EnName")]
        public string EnName { get; set; }

        ///<summary>
        /// 员工花名
        ///</summary>
        [SugarColumn(ColumnName = "RosterName")]
        public string RosterName { get; set; }

        ///<summary>
        /// 性别
        ///</summary>
        [SugarColumn(ColumnName = "Sex")]
        public Sex Sex { get; set; }

        ///<summary>
        /// 学历
        ///</summary>
        [SugarColumn(ColumnName = "Education")]
        public byte Education { get; set; }

        ///<summary>
        /// 公司id
        ///</summary>
        [SugarColumn(ColumnName = "CompanyId")]
        public int? CompanyId { get; set; }

        ///<summary>
        /// 部门id
        ///</summary>
        [SugarColumn(ColumnName = "DeptId")]
        public int? DeptId { get; set; }

        ///<summary>
        /// 员工直接组织Id
        ///</summary>
        [SugarColumn(ColumnName = "OrgId")]
        public int? OrgId { get; set; }

        ///<summary>
        /// 国际区号
        ///</summary>
        [SugarColumn(ColumnName = "CountryCode")]
        public string CountryCode { get; set; }

        ///<summary>
        /// 联系电话
        ///</summary>
        [SugarColumn(ColumnName = "TelPhone")]
        public string TelPhone { get; set; }

        ///<summary>
        /// 直属上级
        ///</summary>
        [SugarColumn(ColumnName = "ManagerName")]
        public string ManagerName { get; set; }

        ///<summary>
        /// 直属上级工号
        ///</summary>
        [SugarColumn(ColumnName = "ManagerCode")]
        public string ManagerCode { get; set; }

        ///<summary>
        /// 导师姓名
        ///</summary>
        [SugarColumn(ColumnName = "TutorName")]
        public string TutorName { get; set; }

        ///<summary>
        /// 导师工号
        ///</summary>
        [SugarColumn(ColumnName = "TutorCode")]
        public string TutorCode { get; set; }

        ///<summary>
        /// 邮箱
        ///</summary>
        [SugarColumn(ColumnName = "Mail")]
        public string Mail { get; set; }

        ///<summary>
        /// 微信号
        ///</summary>
        [SugarColumn(ColumnName = "WxNumber")]
        public string WxNumber { get; set; }

        ///<summary>
        /// QQ
        ///</summary>
        [SugarColumn(ColumnName = "QQ")]
        public string QQ { get; set; }

        ///<summary>
        /// 员工工号
        ///</summary>
        [SugarColumn(ColumnName = "EmployeeCode")]
        public string EmployeeCode { get; set; }

        ///<summary>
        /// 用工类型
        ///</summary>
        [SugarColumn(ColumnName = "WorkType")]
        public WorkType WorkType { get; set; }

        ///<summary>
        /// 办公地址
        ///</summary>
        [SugarColumn(ColumnName = "Address")]
        public string Address { get; set; }

        ///<summary>
        /// 在职状态
        ///</summary>
        [SugarColumn(ColumnName = "JobStatus")]
        public JobStatus JobStatus { get; set; }

        ///<summary>
        /// 办公状态
        ///</summary>
        [SugarColumn(ColumnName = "OfficeStatus")]
        public OfficeStatus OfficeStatus { get; set; }

        ///<summary>
        /// 企业邮箱
        ///</summary>
        [SugarColumn(ColumnName = "QyMail")]
        public string QyMail { get; set; }

        /// <summary>
        /// 企业邮箱2
        /// </summary>
        [SugarColumn(ColumnName = "QyMail2")]
        public string QyMail2 { get; set; }

        ///<summary>
        /// 企业QQ
        ///</summary>
        [SugarColumn(ColumnName = "QyQQ")]
        public string QyQQ { get; set; }

        ///<summary>
        /// 出生日期
        ///</summary>
        [SugarColumn(ColumnName = "BirthDate")]
        public DateTime? BirthDate { get; set; }

        ///<summary>
        /// 合同公司
        ///</summary>
        [SugarColumn(ColumnName = "ContractCompany")]
        public int? ContractCompany { get; set; }

        /// <summary>
        /// 身份证
        /// </summary>
        [SugarColumn(ColumnName = "IdCard")]
        public string IdCard { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [SugarColumn(ColumnName = "Remark")]
        public string ReMark { get; set; }

        /// <summary>
        /// 座机号
        /// </summary>
        [SugarColumn(ColumnName = "LandlineNo")]
        public string LandlineNo { get; set; }

        /// <summary>
        /// 传真号
        /// </summary>
        [SugarColumn(ColumnName = "FaxNo")]
        public string FaxNo { get; set; }

        /// <summary>
        /// 消息弹窗位置
        /// </summary>
        [SugarColumn(ColumnName = "MsgPopDirection")]
        public int? MsgPopDirection { get; set; } = 1;

        /// <summary>
        /// 财务公司
        /// </summary>
        [SugarColumn(ColumnName = "FinanceCompany")]
        public int? FinanceCompany { get; set; }

        /// <summary>
        /// 财务部门
        /// </summary>
        [SugarColumn(ColumnName = "FinanceDepartment")]
        public int? FinanceDepartment { get; set; }

        /// <summary>
        /// 签名文件Key
        /// </summary>
        [SugarColumn(ColumnName = "SignatureFileKey")]
        public string SignatureFileKey { get; set; }
    }
}